/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ui;

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import modelo.ModeloDatos;
import modelo.ModeloGrafica;
import modelo.ModeloSimulacion;

/**
 *
 * @author juanan
 */
public class Bacterias extends JFrame {

    private JButton btnSimular;
    private PanelBacterias panelPintadoBac;
    private Experimento experimento;
    private ModeloDatos modeloDatos;
    private ModeloGrafica modeloGrafica;
    private Poblacion p;
    
    public Bacterias(Experimento experimento) {
        this.experimento=experimento;
        int i=experimento.getTabPane().getSelectedIndex();
        p = (Poblacion) experimento.getTabPane().getComponentAt(i);
        modeloGrafica=p.getM();
        modeloDatos=p.getmDatos();

        

        
        setBounds(100,100,400,500);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
        Container contentPane = getContentPane();
        panelPintadoBac = new PanelBacterias();
        btnSimular = new JButton("Simular");
        
        contentPane.add(panelPintadoBac, BorderLayout.CENTER);
        contentPane.add(btnSimular, BorderLayout.SOUTH);
        
        btnSimular.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                
                
                
                int cantidadPoblacion = modeloDatos.getTamañoInicial();
                
                int aliIni = modeloGrafica.getAlimentoInicial();
                int aliMax = modeloGrafica.getAlimentoMax();
                int diaMax = modeloGrafica.getDiaAlimentoMax();
                int aliFinal = modeloGrafica.getAlimentoFinal();
                
                int numDias = 40;
                int ladoPlato = 100;
                
                ModeloSimulacion threadSimulation =
                        new ModeloSimulacion(panelPintadoBac, cantidadPoblacion,
                            aliIni, aliMax, diaMax, aliFinal, numDias, ladoPlato);
                threadSimulation.start();
            }
        });
    }
}